#include<iostream>
#include<cstring>
using namespace std;
const int maxn = 250;
long long f[maxn][maxn],n,m,x,y;
bool a[maxn][maxn];
int main(){
    cin>>n>>m>>x>>y;
    a[x][y]=true;
    a[x-1][y-2]=a[x-2][y-1]=a[x+1][y+2]=a[x+2][y+1]=a[x-1][y+2]=a[x-2][y+1]=a[x+1][y-2]=a[x+2][y-1]=true;
    
    for(int i=0;i<=n;i++){
        for(int j=0;j<=m;j++){
            f[0][0]=1;
            if(a[i][j]){
                continue;
            }else if(a[i-1][j] || i-1<0){ 
                f[i][j]=f[i][j-1];
            }else if(a[i][j-1] || j-1<0){
                f[i][j]=f[i-1][j];
            }else{
                f[i][j]=f[i-1][j]+f[i][j-1];
            }
        }
    }
    
    cout<<f[n][m]<<endl;
    return 0;
}
